//
//  YLEmptyDataObject.swift
//  Swift-Codedase
//
//  Created by xyanl on 2023/9/12.
//

import Foundation
import UIKit

/// Placeholder对象，用于创建占位符
struct YLEmptyDataObject {
    
    /// 占位符数据源
    let data: YLEmptyDataModel
    /// 占位符 cell 的 identifier
    let cellIdentifier: String
    /// 占位符的key，每个占位符应该有一个唯一的key
    let emptyDataKey: YLEmptyDataKey
    /// 是否应该显示tableViewHeader，默认:false
    let shouldShowTableViewHeader: Bool
    /// 是否应该显示tableViewFooter，默认:false
    let shouldShowTableViewFooter: Bool
    
    
    /// 统一样式，配置不同占位符的数据
    /// - Parameters:
    ///   - data: 数据
    ///   - showHeader: 是否应该显示tableViewHeader
    ///   - showFooter: 是否应该显示tableViewFooter
    public init(_ data: YLEmptyDataModel, showHeader: Bool = false, showFooter: Bool = false) {
        self.data = data
        self.emptyDataKey = data.key
        self.cellIdentifier = data.cell
        self.shouldShowTableViewHeader = showHeader
        self.shouldShowTableViewFooter = showFooter
    }
}
